/**
 * <copyright>
 * </copyright>
 *
 * $Id$
 */
package org.admanager.soageneralpattern.plugin.soageneralpattern;

import org.eclipse.emf.ecore.EAttribute;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.EReference;

/**
 * <!-- begin-user-doc -->
 * The <b>Package</b> for the model.
 * It contains accessors for the meta objects to represent
 * <ul>
 *   <li>each class,</li>
 *   <li>each feature of each class,</li>
 *   <li>each enum,</li>
 *   <li>and each data type</li>
 * </ul>
 * <!-- end-user-doc -->
 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.soageneralpatternFactory
 * @model kind="package"
 * @generated
 */
public interface soageneralpatternPackage extends EPackage {
	/**
	 * The package name.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	String eNAME = "soageneralpattern";

	/**
	 * The package namespace URI.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	String eNS_URI = "http://soageneralpattern/1.0";

	/**
	 * The package namespace name.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	String eNS_PREFIX = "soageneralpattern";

	/**
	 * The singleton instance of the package.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	soageneralpatternPackage eINSTANCE = org.admanager.soageneralpattern.plugin.soageneralpattern.impl.soageneralpatternPackageImpl.init();

	/**
	 * The meta object id for the '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.impl.ElementImpl <em>Element</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.ElementImpl
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.soageneralpatternPackageImpl#getElement()
	 * @generated
	 */
	int ELEMENT = 6;

	/**
	 * The feature id for the '<em><b>Roles</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ELEMENT__ROLES = 0;

	/**
	 * The feature id for the '<em><b>Multiplicity</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ELEMENT__MULTIPLICITY = 1;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ELEMENT__NAME = 2;

	/**
	 * The number of structural features of the '<em>Element</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ELEMENT_FEATURE_COUNT = 3;

	/**
	 * The meta object id for the '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.impl.ComponentImpl <em>Component</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.ComponentImpl
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.soageneralpatternPackageImpl#getComponent()
	 * @generated
	 */
	int COMPONENT = 0;

	/**
	 * The feature id for the '<em><b>Roles</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int COMPONENT__ROLES = ELEMENT__ROLES;

	/**
	 * The feature id for the '<em><b>Multiplicity</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int COMPONENT__MULTIPLICITY = ELEMENT__MULTIPLICITY;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int COMPONENT__NAME = ELEMENT__NAME;

	/**
	 * The feature id for the '<em><b>Reference</b></em>' containment reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int COMPONENT__REFERENCE = ELEMENT_FEATURE_COUNT + 0;

	/**
	 * The feature id for the '<em><b>Service</b></em>' containment reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int COMPONENT__SERVICE = ELEMENT_FEATURE_COUNT + 1;

	/**
	 * The number of structural features of the '<em>Component</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int COMPONENT_FEATURE_COUNT = ELEMENT_FEATURE_COUNT + 2;

	/**
	 * The meta object id for the '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.impl.CompositeImpl <em>Composite</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.CompositeImpl
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.soageneralpatternPackageImpl#getComposite()
	 * @generated
	 */
	int COMPOSITE = 1;

	/**
	 * The feature id for the '<em><b>Roles</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int COMPOSITE__ROLES = ELEMENT__ROLES;

	/**
	 * The feature id for the '<em><b>Multiplicity</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int COMPOSITE__MULTIPLICITY = ELEMENT__MULTIPLICITY;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int COMPOSITE__NAME = ELEMENT__NAME;

	/**
	 * The feature id for the '<em><b>Component</b></em>' containment reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int COMPOSITE__COMPONENT = ELEMENT_FEATURE_COUNT + 0;

	/**
	 * The feature id for the '<em><b>Reference</b></em>' containment reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int COMPOSITE__REFERENCE = ELEMENT_FEATURE_COUNT + 1;

	/**
	 * The feature id for the '<em><b>Service</b></em>' containment reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int COMPOSITE__SERVICE = ELEMENT_FEATURE_COUNT + 2;

	/**
	 * The number of structural features of the '<em>Composite</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int COMPOSITE_FEATURE_COUNT = ELEMENT_FEATURE_COUNT + 3;

	/**
	 * The meta object id for the '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.impl.ReferenceImpl <em>Reference</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.ReferenceImpl
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.soageneralpatternPackageImpl#getReference()
	 * @generated
	 */
	int REFERENCE = 2;

	/**
	 * The feature id for the '<em><b>Roles</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REFERENCE__ROLES = ELEMENT__ROLES;

	/**
	 * The feature id for the '<em><b>Multiplicity</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REFERENCE__MULTIPLICITY = ELEMENT__MULTIPLICITY;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REFERENCE__NAME = ELEMENT__NAME;

	/**
	 * The feature id for the '<em><b>Promote</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REFERENCE__PROMOTE = ELEMENT_FEATURE_COUNT + 0;

	/**
	 * The number of structural features of the '<em>Reference</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REFERENCE_FEATURE_COUNT = ELEMENT_FEATURE_COUNT + 1;

	/**
	 * The meta object id for the '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.impl.ServiceImpl <em>Service</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.ServiceImpl
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.soageneralpatternPackageImpl#getService()
	 * @generated
	 */
	int SERVICE = 3;

	/**
	 * The feature id for the '<em><b>Roles</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int SERVICE__ROLES = ELEMENT__ROLES;

	/**
	 * The feature id for the '<em><b>Multiplicity</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int SERVICE__MULTIPLICITY = ELEMENT__MULTIPLICITY;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int SERVICE__NAME = ELEMENT__NAME;

	/**
	 * The feature id for the '<em><b>Promote</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int SERVICE__PROMOTE = ELEMENT_FEATURE_COUNT + 0;

	/**
	 * The number of structural features of the '<em>Service</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int SERVICE_FEATURE_COUNT = ELEMENT_FEATURE_COUNT + 1;

	/**
	 * The meta object id for the '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.impl.ComponentServiceImpl <em>Component Service</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.ComponentServiceImpl
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.soageneralpatternPackageImpl#getComponentService()
	 * @generated
	 */
	int COMPONENT_SERVICE = 4;

	/**
	 * The feature id for the '<em><b>Roles</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int COMPONENT_SERVICE__ROLES = ELEMENT__ROLES;

	/**
	 * The feature id for the '<em><b>Multiplicity</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int COMPONENT_SERVICE__MULTIPLICITY = ELEMENT__MULTIPLICITY;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int COMPONENT_SERVICE__NAME = ELEMENT__NAME;

	/**
	 * The number of structural features of the '<em>Component Service</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int COMPONENT_SERVICE_FEATURE_COUNT = ELEMENT_FEATURE_COUNT + 0;

	/**
	 * The meta object id for the '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.impl.ComponentReferenceImpl <em>Component Reference</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.ComponentReferenceImpl
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.soageneralpatternPackageImpl#getComponentReference()
	 * @generated
	 */
	int COMPONENT_REFERENCE = 5;

	/**
	 * The feature id for the '<em><b>Roles</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int COMPONENT_REFERENCE__ROLES = ELEMENT__ROLES;

	/**
	 * The feature id for the '<em><b>Multiplicity</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int COMPONENT_REFERENCE__MULTIPLICITY = ELEMENT__MULTIPLICITY;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int COMPONENT_REFERENCE__NAME = ELEMENT__NAME;

	/**
	 * The feature id for the '<em><b>Target</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int COMPONENT_REFERENCE__TARGET = ELEMENT_FEATURE_COUNT + 0;

	/**
	 * The number of structural features of the '<em>Component Reference</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int COMPONENT_REFERENCE_FEATURE_COUNT = ELEMENT_FEATURE_COUNT + 1;

	/**
	 * The meta object id for the '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.impl.PatternImpl <em>Pattern</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.PatternImpl
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.soageneralpatternPackageImpl#getPattern()
	 * @generated
	 */
	int PATTERN = 7;

	/**
	 * The feature id for the '<em><b>Elements</b></em>' containment reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int PATTERN__ELEMENTS = 0;

	/**
	 * The feature id for the '<em><b>Multiplicities</b></em>' containment reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int PATTERN__MULTIPLICITIES = 1;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int PATTERN__NAME = 2;

	/**
	 * The feature id for the '<em><b>Containing Roles</b></em>' containment reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int PATTERN__CONTAINING_ROLES = 3;

	/**
	 * The number of structural features of the '<em>Pattern</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int PATTERN_FEATURE_COUNT = 4;

	/**
	 * The meta object id for the '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.impl.RoleImpl <em>Role</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.RoleImpl
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.soageneralpatternPackageImpl#getRole()
	 * @generated
	 */
	int ROLE = 8;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ROLE__NAME = 0;

	/**
	 * The feature id for the '<em><b>Invariants</b></em>' containment reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ROLE__INVARIANTS = 1;

	/**
	 * The number of structural features of the '<em>Role</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ROLE_FEATURE_COUNT = 2;

	/**
	 * The meta object id for the '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.impl.MultiplicityImpl <em>Multiplicity</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.MultiplicityImpl
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.soageneralpatternPackageImpl#getMultiplicity()
	 * @generated
	 */
	int MULTIPLICITY = 9;

	/**
	 * The feature id for the '<em><b>Lower Bound</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MULTIPLICITY__LOWER_BOUND = 0;

	/**
	 * The feature id for the '<em><b>Upper Bound</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MULTIPLICITY__UPPER_BOUND = 1;

	/**
	 * The feature id for the '<em><b>Horizontal</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MULTIPLICITY__HORIZONTAL = 2;

	/**
	 * The feature id for the '<em><b>Vertical</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MULTIPLICITY__VERTICAL = 3;

	/**
	 * The number of structural features of the '<em>Multiplicity</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MULTIPLICITY_FEATURE_COUNT = 4;

	/**
	 * The meta object id for the '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.impl.ConstraintImpl <em>Constraint</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.ConstraintImpl
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.soageneralpatternPackageImpl#getConstraint()
	 * @generated
	 */
	int CONSTRAINT = 10;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int CONSTRAINT__NAME = 0;

	/**
	 * The feature id for the '<em><b>Body</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int CONSTRAINT__BODY = 1;

	/**
	 * The number of structural features of the '<em>Constraint</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int CONSTRAINT_FEATURE_COUNT = 2;


	/**
	 * Returns the meta object for class '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.Component <em>Component</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Component</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.Component
	 * @generated
	 */
	EClass getComponent();

	/**
	 * Returns the meta object for the containment reference list '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.Component#getReference <em>Reference</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the containment reference list '<em>Reference</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.Component#getReference()
	 * @see #getComponent()
	 * @generated
	 */
	EReference getComponent_Reference();

	/**
	 * Returns the meta object for the containment reference list '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.Component#getService <em>Service</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the containment reference list '<em>Service</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.Component#getService()
	 * @see #getComponent()
	 * @generated
	 */
	EReference getComponent_Service();

	/**
	 * Returns the meta object for class '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.Composite <em>Composite</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Composite</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.Composite
	 * @generated
	 */
	EClass getComposite();

	/**
	 * Returns the meta object for the containment reference list '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.Composite#getComponent <em>Component</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the containment reference list '<em>Component</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.Composite#getComponent()
	 * @see #getComposite()
	 * @generated
	 */
	EReference getComposite_Component();

	/**
	 * Returns the meta object for the containment reference list '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.Composite#getReference <em>Reference</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the containment reference list '<em>Reference</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.Composite#getReference()
	 * @see #getComposite()
	 * @generated
	 */
	EReference getComposite_Reference();

	/**
	 * Returns the meta object for the containment reference list '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.Composite#getService <em>Service</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the containment reference list '<em>Service</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.Composite#getService()
	 * @see #getComposite()
	 * @generated
	 */
	EReference getComposite_Service();

	/**
	 * Returns the meta object for class '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.Reference <em>Reference</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Reference</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.Reference
	 * @generated
	 */
	EClass getReference();

	/**
	 * Returns the meta object for the reference list '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.Reference#getPromote <em>Promote</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the reference list '<em>Promote</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.Reference#getPromote()
	 * @see #getReference()
	 * @generated
	 */
	EReference getReference_Promote();

	/**
	 * Returns the meta object for class '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.Service <em>Service</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Service</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.Service
	 * @generated
	 */
	EClass getService();

	/**
	 * Returns the meta object for the reference '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.Service#getPromote <em>Promote</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the reference '<em>Promote</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.Service#getPromote()
	 * @see #getService()
	 * @generated
	 */
	EReference getService_Promote();

	/**
	 * Returns the meta object for class '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.ComponentService <em>Component Service</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Component Service</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.ComponentService
	 * @generated
	 */
	EClass getComponentService();

	/**
	 * Returns the meta object for class '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.ComponentReference <em>Component Reference</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Component Reference</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.ComponentReference
	 * @generated
	 */
	EClass getComponentReference();

	/**
	 * Returns the meta object for the reference list '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.ComponentReference#getTarget <em>Target</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the reference list '<em>Target</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.ComponentReference#getTarget()
	 * @see #getComponentReference()
	 * @generated
	 */
	EReference getComponentReference_Target();

	/**
	 * Returns the meta object for class '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.Element <em>Element</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Element</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.Element
	 * @generated
	 */
	EClass getElement();

	/**
	 * Returns the meta object for the reference list '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.Element#getRoles <em>Roles</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the reference list '<em>Roles</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.Element#getRoles()
	 * @see #getElement()
	 * @generated
	 */
	EReference getElement_Roles();

	/**
	 * Returns the meta object for the reference '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.Element#getMultiplicity <em>Multiplicity</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the reference '<em>Multiplicity</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.Element#getMultiplicity()
	 * @see #getElement()
	 * @generated
	 */
	EReference getElement_Multiplicity();

	/**
	 * Returns the meta object for the attribute '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.Element#getName <em>Name</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Name</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.Element#getName()
	 * @see #getElement()
	 * @generated
	 */
	EAttribute getElement_Name();

	/**
	 * Returns the meta object for class '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.Pattern <em>Pattern</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Pattern</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.Pattern
	 * @generated
	 */
	EClass getPattern();

	/**
	 * Returns the meta object for the containment reference list '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.Pattern#getElements <em>Elements</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the containment reference list '<em>Elements</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.Pattern#getElements()
	 * @see #getPattern()
	 * @generated
	 */
	EReference getPattern_Elements();

	/**
	 * Returns the meta object for the containment reference list '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.Pattern#getMultiplicities <em>Multiplicities</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the containment reference list '<em>Multiplicities</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.Pattern#getMultiplicities()
	 * @see #getPattern()
	 * @generated
	 */
	EReference getPattern_Multiplicities();

	/**
	 * Returns the meta object for the attribute '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.Pattern#getName <em>Name</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Name</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.Pattern#getName()
	 * @see #getPattern()
	 * @generated
	 */
	EAttribute getPattern_Name();

	/**
	 * Returns the meta object for the containment reference list '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.Pattern#getContainingRoles <em>Containing Roles</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the containment reference list '<em>Containing Roles</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.Pattern#getContainingRoles()
	 * @see #getPattern()
	 * @generated
	 */
	EReference getPattern_ContainingRoles();

	/**
	 * Returns the meta object for class '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.Role <em>Role</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Role</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.Role
	 * @generated
	 */
	EClass getRole();

	/**
	 * Returns the meta object for the attribute '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.Role#getName <em>Name</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Name</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.Role#getName()
	 * @see #getRole()
	 * @generated
	 */
	EAttribute getRole_Name();

	/**
	 * Returns the meta object for the containment reference list '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.Role#getInvariants <em>Invariants</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the containment reference list '<em>Invariants</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.Role#getInvariants()
	 * @see #getRole()
	 * @generated
	 */
	EReference getRole_Invariants();

	/**
	 * Returns the meta object for class '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.Multiplicity <em>Multiplicity</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Multiplicity</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.Multiplicity
	 * @generated
	 */
	EClass getMultiplicity();

	/**
	 * Returns the meta object for the attribute '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.Multiplicity#getLowerBound <em>Lower Bound</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Lower Bound</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.Multiplicity#getLowerBound()
	 * @see #getMultiplicity()
	 * @generated
	 */
	EAttribute getMultiplicity_LowerBound();

	/**
	 * Returns the meta object for the attribute '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.Multiplicity#getUpperBound <em>Upper Bound</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Upper Bound</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.Multiplicity#getUpperBound()
	 * @see #getMultiplicity()
	 * @generated
	 */
	EAttribute getMultiplicity_UpperBound();

	/**
	 * Returns the meta object for the attribute '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.Multiplicity#isHorizontal <em>Horizontal</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Horizontal</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.Multiplicity#isHorizontal()
	 * @see #getMultiplicity()
	 * @generated
	 */
	EAttribute getMultiplicity_Horizontal();

	/**
	 * Returns the meta object for the attribute '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.Multiplicity#isVertical <em>Vertical</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Vertical</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.Multiplicity#isVertical()
	 * @see #getMultiplicity()
	 * @generated
	 */
	EAttribute getMultiplicity_Vertical();

	/**
	 * Returns the meta object for class '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.Constraint <em>Constraint</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Constraint</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.Constraint
	 * @generated
	 */
	EClass getConstraint();

	/**
	 * Returns the meta object for the attribute '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.Constraint#getName <em>Name</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Name</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.Constraint#getName()
	 * @see #getConstraint()
	 * @generated
	 */
	EAttribute getConstraint_Name();

	/**
	 * Returns the meta object for the attribute '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.Constraint#getBody <em>Body</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Body</em>'.
	 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.Constraint#getBody()
	 * @see #getConstraint()
	 * @generated
	 */
	EAttribute getConstraint_Body();

	/**
	 * Returns the factory that creates the instances of the model.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the factory that creates the instances of the model.
	 * @generated
	 */
	soageneralpatternFactory getsoageneralpatternFactory();

	/**
	 * <!-- begin-user-doc -->
	 * Defines literals for the meta objects that represent
	 * <ul>
	 *   <li>each class,</li>
	 *   <li>each feature of each class,</li>
	 *   <li>each enum,</li>
	 *   <li>and each data type</li>
	 * </ul>
	 * <!-- end-user-doc -->
	 * @generated
	 */
	interface Literals {
		/**
		 * The meta object literal for the '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.impl.ComponentImpl <em>Component</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.ComponentImpl
		 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.soageneralpatternPackageImpl#getComponent()
		 * @generated
		 */
		EClass COMPONENT = eINSTANCE.getComponent();

		/**
		 * The meta object literal for the '<em><b>Reference</b></em>' containment reference list feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference COMPONENT__REFERENCE = eINSTANCE.getComponent_Reference();

		/**
		 * The meta object literal for the '<em><b>Service</b></em>' containment reference list feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference COMPONENT__SERVICE = eINSTANCE.getComponent_Service();

		/**
		 * The meta object literal for the '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.impl.CompositeImpl <em>Composite</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.CompositeImpl
		 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.soageneralpatternPackageImpl#getComposite()
		 * @generated
		 */
		EClass COMPOSITE = eINSTANCE.getComposite();

		/**
		 * The meta object literal for the '<em><b>Component</b></em>' containment reference list feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference COMPOSITE__COMPONENT = eINSTANCE.getComposite_Component();

		/**
		 * The meta object literal for the '<em><b>Reference</b></em>' containment reference list feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference COMPOSITE__REFERENCE = eINSTANCE.getComposite_Reference();

		/**
		 * The meta object literal for the '<em><b>Service</b></em>' containment reference list feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference COMPOSITE__SERVICE = eINSTANCE.getComposite_Service();

		/**
		 * The meta object literal for the '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.impl.ReferenceImpl <em>Reference</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.ReferenceImpl
		 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.soageneralpatternPackageImpl#getReference()
		 * @generated
		 */
		EClass REFERENCE = eINSTANCE.getReference();

		/**
		 * The meta object literal for the '<em><b>Promote</b></em>' reference list feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference REFERENCE__PROMOTE = eINSTANCE.getReference_Promote();

		/**
		 * The meta object literal for the '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.impl.ServiceImpl <em>Service</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.ServiceImpl
		 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.soageneralpatternPackageImpl#getService()
		 * @generated
		 */
		EClass SERVICE = eINSTANCE.getService();

		/**
		 * The meta object literal for the '<em><b>Promote</b></em>' reference feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference SERVICE__PROMOTE = eINSTANCE.getService_Promote();

		/**
		 * The meta object literal for the '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.impl.ComponentServiceImpl <em>Component Service</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.ComponentServiceImpl
		 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.soageneralpatternPackageImpl#getComponentService()
		 * @generated
		 */
		EClass COMPONENT_SERVICE = eINSTANCE.getComponentService();

		/**
		 * The meta object literal for the '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.impl.ComponentReferenceImpl <em>Component Reference</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.ComponentReferenceImpl
		 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.soageneralpatternPackageImpl#getComponentReference()
		 * @generated
		 */
		EClass COMPONENT_REFERENCE = eINSTANCE.getComponentReference();

		/**
		 * The meta object literal for the '<em><b>Target</b></em>' reference list feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference COMPONENT_REFERENCE__TARGET = eINSTANCE.getComponentReference_Target();

		/**
		 * The meta object literal for the '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.impl.ElementImpl <em>Element</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.ElementImpl
		 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.soageneralpatternPackageImpl#getElement()
		 * @generated
		 */
		EClass ELEMENT = eINSTANCE.getElement();

		/**
		 * The meta object literal for the '<em><b>Roles</b></em>' reference list feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference ELEMENT__ROLES = eINSTANCE.getElement_Roles();

		/**
		 * The meta object literal for the '<em><b>Multiplicity</b></em>' reference feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference ELEMENT__MULTIPLICITY = eINSTANCE.getElement_Multiplicity();

		/**
		 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute ELEMENT__NAME = eINSTANCE.getElement_Name();

		/**
		 * The meta object literal for the '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.impl.PatternImpl <em>Pattern</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.PatternImpl
		 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.soageneralpatternPackageImpl#getPattern()
		 * @generated
		 */
		EClass PATTERN = eINSTANCE.getPattern();

		/**
		 * The meta object literal for the '<em><b>Elements</b></em>' containment reference list feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference PATTERN__ELEMENTS = eINSTANCE.getPattern_Elements();

		/**
		 * The meta object literal for the '<em><b>Multiplicities</b></em>' containment reference list feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference PATTERN__MULTIPLICITIES = eINSTANCE.getPattern_Multiplicities();

		/**
		 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute PATTERN__NAME = eINSTANCE.getPattern_Name();

		/**
		 * The meta object literal for the '<em><b>Containing Roles</b></em>' containment reference list feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference PATTERN__CONTAINING_ROLES = eINSTANCE.getPattern_ContainingRoles();

		/**
		 * The meta object literal for the '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.impl.RoleImpl <em>Role</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.RoleImpl
		 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.soageneralpatternPackageImpl#getRole()
		 * @generated
		 */
		EClass ROLE = eINSTANCE.getRole();

		/**
		 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute ROLE__NAME = eINSTANCE.getRole_Name();

		/**
		 * The meta object literal for the '<em><b>Invariants</b></em>' containment reference list feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference ROLE__INVARIANTS = eINSTANCE.getRole_Invariants();

		/**
		 * The meta object literal for the '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.impl.MultiplicityImpl <em>Multiplicity</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.MultiplicityImpl
		 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.soageneralpatternPackageImpl#getMultiplicity()
		 * @generated
		 */
		EClass MULTIPLICITY = eINSTANCE.getMultiplicity();

		/**
		 * The meta object literal for the '<em><b>Lower Bound</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute MULTIPLICITY__LOWER_BOUND = eINSTANCE.getMultiplicity_LowerBound();

		/**
		 * The meta object literal for the '<em><b>Upper Bound</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute MULTIPLICITY__UPPER_BOUND = eINSTANCE.getMultiplicity_UpperBound();

		/**
		 * The meta object literal for the '<em><b>Horizontal</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute MULTIPLICITY__HORIZONTAL = eINSTANCE.getMultiplicity_Horizontal();

		/**
		 * The meta object literal for the '<em><b>Vertical</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute MULTIPLICITY__VERTICAL = eINSTANCE.getMultiplicity_Vertical();

		/**
		 * The meta object literal for the '{@link org.admanager.soageneralpattern.plugin.soageneralpattern.impl.ConstraintImpl <em>Constraint</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.ConstraintImpl
		 * @see org.admanager.soageneralpattern.plugin.soageneralpattern.impl.soageneralpatternPackageImpl#getConstraint()
		 * @generated
		 */
		EClass CONSTRAINT = eINSTANCE.getConstraint();

		/**
		 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute CONSTRAINT__NAME = eINSTANCE.getConstraint_Name();

		/**
		 * The meta object literal for the '<em><b>Body</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute CONSTRAINT__BODY = eINSTANCE.getConstraint_Body();

	}

} //soageneralpatternPackage
